package com.spc.car.data.domain.adm.vo;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;


/**
 * 公车使用申请
 */
@Data
@Accessors(chain = true)
public class VehicleApplyVO {

    /**
     * 项目编号
     */
    @NotBlank(message = "项目编号不能为空！")
    @ApiModelProperty(value = "项目编号", name = "projectCode", required = true)
    private String projectCode;

    /**
     * 招标人名称
     */
    @NotBlank(message = "招标人不能为空！")
    @ApiModelProperty(value = "招标人名称", name = "tenderee", required = true)
    private String tenderee;

    /**
     * 项目负责部门
     */
    @NotNull(message = "项目负责部门不能为空")
    @ApiModelProperty(value = "项目负责部门", name = "depId", required = true)
    private Long depId;

    /**
     * 部门负责人
     */
    @NotNull(message = "部门负责人不能为空！")
    @ApiModelProperty(value = "部门负责人", name = "depUserId", required = true)
    private Long depUserId;

    /**
     * 项目负责人
     */
    @NotNull(message = "项目负责人不能为空1")
    @ApiModelProperty(value = "项目负责人", name = "projectUserId", required = true)
    private Long projectUserId;

    /**
     * 所使用车辆ID
     */
    @NotNull(message = "车辆ID不能为空！")
    @ApiModelProperty(value = "所使用车辆ID", name = "vehicleId", required = true)
    private Long vehicleId;

    /**
     * 事由
     */
    @NotBlank(message = "借用事由不能为空！")
    @ApiModelProperty(value = "事由", name = "cause", required = true)
    private String cause;

    /**
     * 目的地
     */
    @NotBlank(message = "目的地不能为空！")
    @ApiModelProperty(value = "目的地", name = "destination", required = true)
    private String destination;

    /**
     * 驾驶员
     */
    @NotBlank(message = "驾驶员不能为空！")
    @ApiModelProperty(value = "驾驶员", name = "driver", required = true)
    private String driver;

    @ApiModelProperty(value = "车辆申请状态", name = "applyStatus", required = true, notes = "A-审核中; P-通过; C-取消; R-驳回")
    private String applyStatus;
}
